RL 子系列到這邊要告一段落了,整個系列文也接近尾聲。RL 是個很有趣的主題,有很多內容可以介紹,但礙於篇幅限制,講得略顯倉促。
接下來就來總結一下我們在這個子系列學過的東西,以及一些 RL 未來發展的難題。
RL 具有彈性的架構,讓他能夠應用在許多場合。但直到 deep learning 風潮的出現,在 2013 年 DL 和 RL 結合的 deep Q-network 訓練出能玩 Atari 玩得比人類更好的 AI,RL 的未來性才又受到更多重視。
RL 在遊戲與機器人領域自此都有了很多突破。2016 年 AlphaGo 在最複雜的遊戲 —— 圍棋中打敗頂尖職業棋士,震撼世界。此後的 AlphaGoZero 完全靠著 RL 而不倚賴人類棋譜學習,棋力更勝 AlphaGo,也讓人見識到 RL 深不可測的潛力。
雖然有此成就,但遊戲畢竟是相對好模擬的環境。RL 在硬體控制系統的學習挑戰又更多,而很多更實用的應用也都基於更複雜的環境。RL 能否在其他領域有更多突破,值得期待。
接著我們簡單介紹 RL 的一些任務和未來發展。
RL 的應用太多了,只要是在做決策,都可以用 RL 訓練。這邊列舉一小部分:
最後我們來看看 RL 未來發展和難題。
RL 之所以在遊戲界這麼成功,一部分原因是環境本身是虛擬的。如果要將 RL 帶進機器人或自駕車,那麼一大難題就是如何讓 agent 在真實環境中互動訓練。總不可能讓一台自駕車自己去荒野亂開,肯定沒兩三下就撞到稀巴爛;或是讓機器人在空地學跑步,跌個一兩下就要進廠維修了。所以目前這些任務都是先放在模擬環境中或藉由 human data 訓練後,再移到真實環境中繼續調整。
如何架構真實的模擬環境,雖然不算是 RL 訓練中的一部分,卻是對訓練效果影響非常大的前置作業。例如在 [3] 中,作者藉由大量真實世界的影像,建構一個逼真的自駕車訓練環境,訓練出的 agent 是可以直接上路不需要額外在真實環境中調整。而有了真實的模擬環境,也更能激發 RL 的潛能,能從模仿人類到自己獨立學會做決策,也更有機會學到人類還沒學會的事。
另一個訓練難題是 sample complexity,也就是需要多少 sample 才能訓練好一個 model。Sample complexity 越小,就代表 RL 能被實際應用的可行性越高,成本越小。如何減小 sample complexity,增加 RL 學習效率,也是未來發展值得注重的一點。
目前最多人探討的 RL 大多屬於 single-agent,也就是只有一個 agent 在環境中學習。但很多更複雜的任務裡,會有不只一個 agent 在環境中,每個 agent 都要學習最大化自己的 reward,而行為的 policy 也跟其他 agent 息息相關。將 RL 應用在這些任務中就稱為 multi-agent RL (MARL)。
—— MARL 三個不同 setting。[5]
MARL 大致上被應用在需要溝通、合作、或競爭這類的任務。例如一群無人機要溝通合作達成某項任務、圍棋有競爭關係、甚至讓一群人溝通發明新語言等等。真實世界裡很多這類多人參與的任務,因此 MARL 也是未來很重要的一個發展重點。
最後是我們一直提到的,如何把 RL 的成功從遊戲帶入更複雜更實用的領域。上一篇我們提到 RL 在不同領域應用的一些結果,例如廣告投放、推薦系統、醫療系統等等。雖然有這些成果,但很多都只停留在學術 paper 裡,尤其是在醫療這麼謹慎的領域。
RL 未來的發展,肯定會很注重在跨領域的成效,並為人類社會帶來更多福祉。